{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### nan"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[ 0.,  1.,  2.,  3.,  4.,  5.],\n",
       "       [ 6.,  7.,  8.,  9., 10., 11.],\n",
       "       [12., 13., 14., 15., 16., 17.],\n",
       "       [18., 19., 20., 21., 22., 23.]])"
      ]
     },
     "execution_count": 43,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "t = np.arange(24).reshape(4,6).astype('float')\n",
    "t"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[ 0.,  1.,  2.,  3.,  4.,  5.],\n",
       "       [ 0.,  7.,  8.,  9., 10., 11.],\n",
       "       [ 0., 13., 14., 15., 16., 17.],\n",
       "       [ 0., 19., 20., nan, 22., 23.]])"
      ]
     },
     "execution_count": 44,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "t[:,0] = 0\n",
    "t[3,3] = np.nan\n",
    "t"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "20"
      ]
     },
     "execution_count": 45,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.count_nonzero(t)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[False, False, False, False, False, False],\n",
       "       [False, False, False, False, False, False],\n",
       "       [False, False, False, False, False, False],\n",
       "       [False, False, False,  True, False, False]])"
      ]
     },
     "execution_count": 48,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "t != t"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[False, False, False, False, False, False],\n",
       "       [False, False, False, False, False, False],\n",
       "       [False, False, False, False, False, False],\n",
       "       [False, False, False,  True, False, False]])"
      ]
     },
     "execution_count": 49,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.isnan(t)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1"
      ]
     },
     "execution_count": 47,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.count_nonzero(t != t)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 50,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[ 0.,  1.,  2.,  3.],\n",
       "       [ 4.,  5.,  6.,  7.],\n",
       "       [ 8.,  9., 10., 11.]])"
      ]
     },
     "execution_count": 50,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "t3 = np.arange(12).reshape(3,4).astype('float')\n",
    "t3"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "66.0"
      ]
     },
     "execution_count": 52,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.sum(t3)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([12., 15., 18., 21.])"
      ]
     },
     "execution_count": 53,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.sum(t3, axis=0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([ 6., 22., 38.])"
      ]
     },
     "execution_count": 54,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.sum(t3, axis=1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 55,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([ 0., 40., 44., nan, 52., 56.])"
      ]
     },
     "execution_count": 55,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.sum(t, axis=0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 56,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([ 0., 40., 44., nan, 52., 56.])"
      ]
     },
     "execution_count": 56,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "t.sum(axis=0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 59,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "nan"
      ]
     },
     "execution_count": 59,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.median(t)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 58,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([ 0., 10., 11., nan, 13., 14.])"
      ]
     },
     "execution_count": 58,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.median(t, axis=0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 练习\n",
    "\n",
    "\n",
    "1. 英国和美国各自youtube1000的数据结合之前的matplotlib绘制出各自的评论数量的直方图\n",
    "2. 希望了解英国的youtube中视频的评论数和喜欢数的关系，应该如何绘制改图\n",
    "3. 现在我希望把之前案例中两个国家的数据方法一起来研究分析，那么应该怎么做？\n",
    "\n",
    "\n",
    "#### 1."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [],
   "source": [
    "us_file_path = \"./youtube_video_data/US_video_data_numbers.csv\"\n",
    "uk_file_path = './youtube_video_data/GB_video_data_numbers.csv'\n",
    "arr_us = np.loadtxt(us_file_path, delimiter=',', dtype='int')\n",
    "arr_uk = np.loadtxt(uk_file_path, delimiter=',', dtype='int')\n",
    "\n",
    "#评论的数据\n",
    "arr_us_comments = arr_us[:,-1]\n",
    "arr_uk_comments = arr_uk[:,-1]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "582624 0\n"
     ]
    }
   ],
   "source": [
    "print(arr_us_comments.max(), arr_us_comments.min())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "from matplotlib import pyplot as plt\n",
    "\n",
    "# 设置中文显示\n",
    "plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签\n",
    "plt.rcParams['axes.unicode_minus']=False #用来正常显示负号"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1600x640 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.figure(figsize=(20,8), dpi=80)\n",
    "\n",
    "bin_width = 1000\n",
    "max_us = arr_us_comments.max()\n",
    "min_us = arr_us_comments.min()\n",
    "\n",
    "plt.hist(arr_us_comments, bins=range(min_us, max_us+bin_width, bin_width))\n",
    "plt.xticks(range(min_us, max_us+bin_width, bin_width)[::1000], )\n",
    "\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "进行缩尾处理, 注意不要使用clip函数, clip函数是缩尾处理"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1600x640 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 截尾处理\n",
    "arr_us_comments = arr_us_comments[arr_us_comments <= 5000]\n",
    "\n",
    "plt.figure(figsize=(20,8), dpi=80)\n",
    "\n",
    "bin_width = 100\n",
    "max_us = arr_us_comments.max()\n",
    "min_us = arr_us_comments.min()\n",
    "\n",
    "plt.hist(arr_us_comments, bins=range(min_us, max_us+bin_width, bin_width))\n",
    "plt.xticks(range(min_us, max_us+bin_width, bin_width), rotation=45)\n",
    "\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 2."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1600x640 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "arr_uk_like = arr_uk[:,1]\n",
    "\n",
    "plt.figure(figsize=(20,8), dpi=80)\n",
    "plt.scatter(arr_uk_like, arr_uk_comments)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "存在\"异常值\""
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1600x640 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 截尾处理\n",
    "arr_uk = arr_uk[arr_uk[:,1]<=500000]\n",
    "\n",
    "arr_uk_comments = arr_uk[:,-1]\n",
    "arr_uk_like = arr_uk[:,1]\n",
    "\n",
    "plt.figure(figsize=(20,8), dpi=80)\n",
    "plt.scatter(arr_uk_like, arr_uk_comments)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "#### 3. 数组的拼接\n",
    "\n",
    "+ 数组的行和列交换"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [],
   "source": [
    "arr_us = np.loadtxt(us_file_path, delimiter=',', dtype='int')\n",
    "arr_uk = np.loadtxt(uk_file_path, delimiter=',', dtype='int')\n",
    "\n",
    "# 添加国家信息(构造全为0,1的数据)\n",
    "zeros_data = np.zeros((arr_us.shape[0],1))\n",
    "ones_data = np.ones((arr_uk.shape[0],1))\n",
    "\n",
    "# 分别添加一列全为0,1的数组\n",
    "arr_us = np.hstack((arr_us,zeros_data))\n",
    "arr_uk = np.hstack((arr_uk,ones_data))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[4394029,  320053,    5931,   46245,       0],\n",
       "       [7860119,  185853,   26679,       0,       0],\n",
       "       [5845909,  576597,   39774,  170708,       0],\n",
       "       ...,\n",
       "       [ 142463,    4231,     148,     279,       0],\n",
       "       [2162240,   41032,    1384,    4737,       0],\n",
       "       [ 515000,   34727,     195,    4722,       0]])"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "arr_us"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[7426393,   78240,   13548,     705,       1],\n",
       "       [ 494203,    2651,    1309,       0,       1],\n",
       "       [ 142819,   13119,     151,    1141,       1],\n",
       "       ...,\n",
       "       [ 109222,    4840,      35,     212,       1],\n",
       "       [ 626223,   22962,     532,    1559,       1],\n",
       "       [  99228,    1699,      23,     135,       1]])"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "arr_uk"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[7426393,   78240,   13548,     705,       1],\n",
       "       [ 494203,    2651,    1309,       0,       1],\n",
       "       [ 142819,   13119,     151,    1141,       1],\n",
       "       ...,\n",
       "       [ 142463,    4231,     148,     279,       0],\n",
       "       [2162240,   41032,    1384,    4737,       0],\n",
       "       [ 515000,   34727,     195,    4722,       0]])"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 拼接两组数据\n",
    "final_data = np.vstack((arr_uk,arr_us))\n",
    "final_data"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "`np.zeros`和`np.zeros`数据类型为float,导致水平拼接之后导致两组数据都转换为float类型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[7426393,   78240,   13548,     705,       1],\n",
       "       [ 494203,    2651,    1309,       0,       1],\n",
       "       [ 142819,   13119,     151,    1141,       1],\n",
       "       ...,\n",
       "       [ 142463,    4231,     148,     279,       0],\n",
       "       [2162240,   41032,    1384,    4737,       0],\n",
       "       [ 515000,   34727,     195,    4722,       0]])"
      ]
     },
     "execution_count": 25,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "arr_us = np.loadtxt(us_file_path, delimiter=',', dtype='int')\n",
    "arr_uk = np.loadtxt(uk_file_path, delimiter=',', dtype='int')\n",
    "\n",
    "# 添加国家信息(构造全为0的数据)\n",
    "zeros_data = np.zeros((arr_us.shape[0],1)).astype(int)\n",
    "ones_data = np.ones((arr_uk.shape[0],1)).astype(int)\n",
    "\n",
    "# 分别添加一列全为0,1的数组\n",
    "arr_us = np.hstack((arr_us,zeros_data))\n",
    "arr_uk = np.hstack((arr_uk,ones_data))\n",
    "\n",
    "# 拼接两组数据\n",
    "final_data = np.vstack((arr_uk,arr_us))\n",
    "final_data"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 反思"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[0., 0., 0., 0.],\n",
       "       [0., 0., 0., 0.],\n",
       "       [0., 0., 0., 0.]])"
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.zeros((3,4))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[1., 1., 1., 1.],\n",
       "       [1., 1., 1., 1.],\n",
       "       [1., 1., 1., 1.]])"
      ]
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.ones((3,4))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[1., 0., 0.],\n",
       "       [0., 1., 0.],\n",
       "       [0., 0., 1.]])"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.eye(3)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([[ 0,  1,  2,  3],\n",
       "       [ 4,  5,  6,  7],\n",
       "       [ 8,  9, 10, 11]])"
      ]
     },
     "execution_count": 33,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "t = np.arange(12).reshape(3,4)\n",
    "t"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([2, 2, 2, 2], dtype=int64)"
      ]
     },
     "execution_count": 34,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 一行中最大值的位置\n",
    "np.argmax(t, axis=0)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([3, 3, 3], dtype=int64)"
      ]
     },
     "execution_count": 35,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 一列中最大值的位置\n",
    "np.argmax(t, axis=1)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "类似的函数 `argmin()`"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python [conda env:analyze]",
   "language": "python",
   "name": "conda-env-analyze-py"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
